package br.com.news.ws;

import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

import org.apache.log4j.Logger;

import br.com.news.utils.database.beans.AnuncioBean;
import br.com.news.utils.service.exception.ServiceException;

@Path("/anuncio")
public class AnuncioWs extends GenericWs<AnuncioBean>{

	private static final Logger logger = Logger.getLogger(NoticiaWs.class);
	
	@PUT
	@Path("/insert")
	@Consumes("application/json")
	public void save(String json) {
		try {
			AnuncioBean anuncio = (AnuncioBean) convertFromJson(json, new AnuncioBean());
			RmiFactory.getAnuncioService().save(anuncio);
		} catch (ServiceException e) {
			logger.error(e.getMessage(),e);
		}
	}
	
	@PUT
	@Path("/update")
	@Consumes("application/json")
	public void update(String json) {
		try {
			AnuncioBean anuncio = (AnuncioBean) convertFromJson(json, new AnuncioBean());
			RmiFactory.getAnuncioService().update(anuncio);
		} catch (ServiceException e) {
			logger.error(e.getMessage(),e);
		}
	}
	
	@GET
	@Path("/buscaAnunciosNaoEnviados")
	@Produces(MediaType.APPLICATION_JSON + ";charset=utf-8")
	public String buscaAnunciosNaoEnviados() {
		return listToJson(RmiFactory.getAnuncioService().buscaAnunciosNaoEnviados());
	}
	
}
